<?php

class RestauranteModel extends GenericModel {

	public function __construct() {
		$this -> setTableName('tb_restaurante');
		parent::__construct();
	}

	/**
	 * Busca os restaurantes que atendem a um detereminado bairro.
	 * @param int $bai_nu ( ID do bairro )
	 * @return array contendo os restaurantes que atendem o bairro.
	 */
	public function buscarRestaurantePorBairro($bai_nu) {
		$querySql = "SELECT 
						r.id,
						r.id_matriz,
						r.nome,
						LOWER(REPLACE(r.nome, ' ', '')) as alias,
						r.descricao,
						r.url,
						r.vlr_minimo,
						r.taxa_entrega,
						r.estacionamento,
						r.retirada,
						r.tempo_entrega,
						r.tipo_restaurante
					FROM
						tb_restaurante r
						INNER JOIN tb_bairros_atendidos ba ON ba.id_restaurante = r.id 
					WHERE
						ba.bai_nu = ?
					ORDER BY r.tipo_restaurante DESC, r.nome";

		return $this -> query($querySql, array($bai_nu));
	}

	public function getRestaurantePorUsuario($idUsuario) {

		$querySql = "SELECT 
					    r.id,
					    r.id_matriz,
					    r.nome,
					    LOWER(REPLACE(r.nome, ' ', '')) as alias,
					    r.descricao,
					    r.url,
					    r.vlr_minimo,
					    r.taxa_entrega,
					    r.estacionamento,
					    r.retirada,
					    r.tempo_entrega
					FROM
					    tb_restaurante r
					    INNER JOIN tb_usuario_restaurante ur ON ( r.id = ur.id_restaurante )
					WHERE
					    ur.id_usuario = ?";
		return $this -> query($querySql, array($idUsuario), TRUE);
	}
	
	public function buscarFormasPagamento($idRestaurante){
	  $querySql =  "SELECT 
                      fp.id, fp.nome
                  FROM
                      tb_restaurante_pagamento rp
                          INNER JOIN
                      tb_forma_pagamento fp ON rp.id_forma_pagamento = fp.id
                  WHERE
                      rp.ativo = 1 AND rp.id_restaurante = ?;";
	  
	  return $this->query($querySql, array($idRestaurante));
	}
  
  public function buscarRestaurantePorUrl($url){
    $querySql = "SELECT * FROM tb_restaurante WHERE url=?";
    return $this->query($querySql, array($url), TRUE);
  }

}
?>